<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
  <meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />

  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>Tracker &mdash; Multi-object trackers in Python 1.0.0 documentation</title>
      <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
      <link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
  <!--[if lt IE 9]>
    <script src="../_static/js/html5shiv.min.js"></script>
  <![endif]-->
  
        <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
        <script src="../_static/jquery.js"></script>
        <script src="../_static/underscore.js"></script>
        <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script>
        <script src="../_static/doctools.js"></script>
        <script src="../_static/sphinx_highlight.js"></script>
    <script src="../_static/js/theme.js"></script>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="prev" title="Multi-object trackers in Python" href="readmefile.html" /> 
</head>

<body class="wy-body-for-nav"> 
  <div class="wy-grid-for-nav">
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search" >
            <a href="../index.html" class="icon icon-home"> Multi-object trackers in Python
          </a>
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>
        </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
              <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="readmefile.html">Multi-object trackers in Python</a></li>
<li class="toctree-l1"><a class="reference internal" href="readmefile.html#example-tf-mobilenetssd-centroidtracker">Example: <cite>TF-MobileNetSSD + CentroidTracker</cite></a></li>
<li class="toctree-l1"><a class="reference internal" href="readmefile.html#example-yolov3-centroidtracker">Example: <cite>YOLOv3 + CentroidTracker</cite></a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">Tracker</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.tracker.Tracker"><code class="docutils literal notranslate"><span class="pre">Tracker</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.tracker.Tracker.preprocess_input"><code class="docutils literal notranslate"><span class="pre">Tracker.preprocess_input()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.tracker.Tracker.update"><code class="docutils literal notranslate"><span class="pre">Tracker.update()</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="#sort">SORT</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.sort_tracker.assign_tracks2detection_iou"><code class="docutils literal notranslate"><span class="pre">assign_tracks2detection_iou()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.sort_tracker.SORT"><code class="docutils literal notranslate"><span class="pre">SORT</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.sort_tracker.SORT.update"><code class="docutils literal notranslate"><span class="pre">SORT.update()</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="#iou-tracker">IOU Tracker</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.iou_tracker.IOUTracker"><code class="docutils literal notranslate"><span class="pre">IOUTracker</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.iou_tracker.IOUTracker.update"><code class="docutils literal notranslate"><span class="pre">IOUTracker.update()</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="#kalman-filter-based-centroid-tracker">Kalman Filter based Centroid Tracker</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.centroid_kf_tracker.assign_tracks2detection_centroid_distances"><code class="docutils literal notranslate"><span class="pre">assign_tracks2detection_centroid_distances()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.centroid_kf_tracker.CentroidKF_Tracker"><code class="docutils literal notranslate"><span class="pre">CentroidKF_Tracker</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.centroid_kf_tracker.CentroidKF_Tracker.update"><code class="docutils literal notranslate"><span class="pre">CentroidKF_Tracker.update()</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="#tracks">Tracks</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.track.Track"><code class="docutils literal notranslate"><span class="pre">Track</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.track.Track.centroid"><code class="docutils literal notranslate"><span class="pre">Track.centroid</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.track.Track.get_mot_challenge_format"><code class="docutils literal notranslate"><span class="pre">Track.get_mot_challenge_format()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.track.Track.get_vis_drone_format"><code class="docutils literal notranslate"><span class="pre">Track.get_vis_drone_format()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.track.Track.predict"><code class="docutils literal notranslate"><span class="pre">Track.predict()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.track.Track.update"><code class="docutils literal notranslate"><span class="pre">Track.update()</span></code></a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.track.KFTrackSORT"><code class="docutils literal notranslate"><span class="pre">KFTrackSORT</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.track.KFTrackSORT.predict"><code class="docutils literal notranslate"><span class="pre">KFTrackSORT.predict()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.track.KFTrackSORT.update"><code class="docutils literal notranslate"><span class="pre">KFTrackSORT.update()</span></code></a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.track.KFTrack4DSORT"><code class="docutils literal notranslate"><span class="pre">KFTrack4DSORT</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.track.KFTrack4DSORT.predict"><code class="docutils literal notranslate"><span class="pre">KFTrack4DSORT.predict()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.track.KFTrack4DSORT.update"><code class="docutils literal notranslate"><span class="pre">KFTrack4DSORT.update()</span></code></a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.track.KFTrackCentroid"><code class="docutils literal notranslate"><span class="pre">KFTrackCentroid</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.track.KFTrackCentroid.predict"><code class="docutils literal notranslate"><span class="pre">KFTrackCentroid.predict()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.track.KFTrackCentroid.update"><code class="docutils literal notranslate"><span class="pre">KFTrackCentroid.update()</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="#kalman-filters">Kalman Filters</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.kalman_tracker.KalmanFilter"><code class="docutils literal notranslate"><span class="pre">KalmanFilter</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.kalman_tracker.KalmanFilter.predict"><code class="docutils literal notranslate"><span class="pre">KalmanFilter.predict()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.kalman_tracker.KalmanFilter.update"><code class="docutils literal notranslate"><span class="pre">KalmanFilter.update()</span></code></a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.kalman_tracker.KFTrackerConstantAcceleration"><code class="docutils literal notranslate"><span class="pre">KFTrackerConstantAcceleration</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.kalman_tracker.KFTracker1D"><code class="docutils literal notranslate"><span class="pre">KFTracker1D</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.kalman_tracker.KFTracker2D"><code class="docutils literal notranslate"><span class="pre">KFTracker2D</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.kalman_tracker.KFTracker4D"><code class="docutils literal notranslate"><span class="pre">KFTracker4D</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.kalman_tracker.KFTrackerSORT"><code class="docutils literal notranslate"><span class="pre">KFTrackerSORT</span></code></a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="#object-detection">Object Detection</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.detectors.detector.Detector"><code class="docutils literal notranslate"><span class="pre">Detector</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.detectors.detector.Detector.detect"><code class="docutils literal notranslate"><span class="pre">Detector.detect()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.detectors.detector.Detector.draw_bboxes"><code class="docutils literal notranslate"><span class="pre">Detector.draw_bboxes()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.detectors.detector.Detector.forward"><code class="docutils literal notranslate"><span class="pre">Detector.forward()</span></code></a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.detectors.caffe.Caffe_SSDMobileNet"><code class="docutils literal notranslate"><span class="pre">Caffe_SSDMobileNet</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.detectors.caffe.Caffe_SSDMobileNet.forward"><code class="docutils literal notranslate"><span class="pre">Caffe_SSDMobileNet.forward()</span></code></a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.detectors.tf.TF_SSDMobileNetV2"><code class="docutils literal notranslate"><span class="pre">TF_SSDMobileNetV2</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.detectors.tf.TF_SSDMobileNetV2.forward"><code class="docutils literal notranslate"><span class="pre">TF_SSDMobileNetV2.forward()</span></code></a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.detectors.yolo.YOLOv3"><code class="docutils literal notranslate"><span class="pre">YOLOv3</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.detectors.yolo.YOLOv3.detect"><code class="docutils literal notranslate"><span class="pre">YOLOv3.detect()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#motrackers.detectors.yolo.YOLOv3.forward"><code class="docutils literal notranslate"><span class="pre">YOLOv3.forward()</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="#utilities">Utilities</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.misc.get_centroid"><code class="docutils literal notranslate"><span class="pre">get_centroid()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.misc.iou"><code class="docutils literal notranslate"><span class="pre">iou()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.misc.iou_xywh"><code class="docutils literal notranslate"><span class="pre">iou_xywh()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.misc.xyxy2xywh"><code class="docutils literal notranslate"><span class="pre">xyxy2xywh()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.misc.xywh2xyxy"><code class="docutils literal notranslate"><span class="pre">xywh2xyxy()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.misc.midwh2xywh"><code class="docutils literal notranslate"><span class="pre">midwh2xywh()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.misc.intersection_complement_indices"><code class="docutils literal notranslate"><span class="pre">intersection_complement_indices()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.misc.nms"><code class="docutils literal notranslate"><span class="pre">nms()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.misc.draw_tracks"><code class="docutils literal notranslate"><span class="pre">draw_tracks()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.misc.load_labelsjson"><code class="docutils literal notranslate"><span class="pre">load_labelsjson()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.misc.dict2jsonfile"><code class="docutils literal notranslate"><span class="pre">dict2jsonfile()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.create_filechooser"><code class="docutils literal notranslate"><span class="pre">create_filechooser()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.select_caffemodel_prototxt"><code class="docutils literal notranslate"><span class="pre">select_caffemodel_prototxt()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.select_caffemodel_weights"><code class="docutils literal notranslate"><span class="pre">select_caffemodel_weights()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.select_caffemodel"><code class="docutils literal notranslate"><span class="pre">select_caffemodel()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.select_videofile"><code class="docutils literal notranslate"><span class="pre">select_videofile()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.select_yolo_weights"><code class="docutils literal notranslate"><span class="pre">select_yolo_weights()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.select_coco_labels"><code class="docutils literal notranslate"><span class="pre">select_coco_labels()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.select_yolo_config"><code class="docutils literal notranslate"><span class="pre">select_yolo_config()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.select_yolo_model"><code class="docutils literal notranslate"><span class="pre">select_yolo_model()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.select_pbtxt"><code class="docutils literal notranslate"><span class="pre">select_pbtxt()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.select_tfmobilenet_weights"><code class="docutils literal notranslate"><span class="pre">select_tfmobilenet_weights()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#motrackers.utils.filechooser_utils.select_tfmobilenet"><code class="docutils literal notranslate"><span class="pre">select_tfmobilenet()</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="#download-pretrained-neural-network-weights">Download pretrained neural-network weights.</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#yolov3">YOLOv3</a></li>
<li class="toctree-l3"><a class="reference internal" href="#tensorflow-mobilenetssdv2">TensorFlow - MobileNetSSDv2</a></li>
<li class="toctree-l3"><a class="reference internal" href="#caffemodel-mobilenetssd">Caffemodel - MobileNetSSD</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="#references-and-credits">References and Credits</a></li>
<li class="toctree-l1"><a class="reference internal" href="#contributor-covenant-code-of-conduct">Contributor Covenant Code of Conduct</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#our-pledge">Our Pledge</a></li>
<li class="toctree-l2"><a class="reference internal" href="#our-standards">Our Standards</a></li>
<li class="toctree-l2"><a class="reference internal" href="#our-responsibilities">Our Responsibilities</a></li>
<li class="toctree-l2"><a class="reference internal" href="#scope">Scope</a></li>
<li class="toctree-l2"><a class="reference internal" href="#enforcement">Enforcement</a></li>
<li class="toctree-l2"><a class="reference internal" href="#attribution">Attribution</a></li>
</ul>
</li>
</ul>

        </div>
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
          <a href="../index.html">Multi-object trackers in Python</a>
      </nav>

      <div class="wy-nav-content">
        <div class="rst-content">
          <div role="navigation" aria-label="Page navigation">
  <ul class="wy-breadcrumbs">
      <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
      <li>Tracker</li>
      <li class="wy-breadcrumbs-aside">
            <a href="../_sources/includeme/apidocuments.rst.txt" rel="nofollow"> View page source</a>
      </li>
  </ul>
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
             
  <section id="tracker">
<h1>Tracker<a class="headerlink" href="#tracker" title="Permalink to this heading"></a></h1>
<dl class="py class">
<dt class="sig sig-object py" id="motrackers.tracker.Tracker">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.tracker.</span></span><span class="sig-name descname"><span class="pre">Tracker</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">max_lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">5</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tracker_output_format</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'mot_challenge'</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/tracker.html#Tracker"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.tracker.Tracker" title="Permalink to this definition"></a></dt>
<dd><p>Greedy Tracker with tracking based on <code class="docutils literal notranslate"><span class="pre">centroid</span></code> location of the bounding box of the object.
This tracker is also referred as <code class="docutils literal notranslate"><span class="pre">CentroidTracker</span></code> in this repository.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>max_lost</strong> (<em>int</em>) – Maximum number of consecutive frames object was not detected.</p></li>
<li><p><strong>tracker_output_format</strong> (<em>str</em>) – Output format of the tracker.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.tracker.Tracker.preprocess_input">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">preprocess_input</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bboxes</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_ids</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_scores</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/tracker.html#Tracker.preprocess_input"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.tracker.Tracker.preprocess_input" title="Permalink to this definition"></a></dt>
<dd><p>Preprocess the input data.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>bboxes</strong> (<em>list</em><em> or </em><em>numpy.ndarray</em>) – Array of bounding boxes with each bbox as a tuple containing <cite>(xmin, ymin, width, height)</cite>.</p></li>
<li><p><strong>class_ids</strong> (<em>list</em><em> or </em><em>numpy.ndarray</em>) – Array of Class ID or label ID.</p></li>
<li><p><strong>detection_scores</strong> (<em>list</em><em> or </em><em>numpy.ndarray</em>) – Array of detection scores (a.k.a. detection probabilities).</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>Data for detections as list of tuples containing <cite>(bbox, class_id, detection_score)</cite>.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>detections (list[Tuple])</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.tracker.Tracker.update">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bboxes</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_scores</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_ids</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/tracker.html#Tracker.update"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.tracker.Tracker.update" title="Permalink to this definition"></a></dt>
<dd><p>Update the tracker based on the new bounding boxes.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>bboxes</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of bounding boxes detected in the current frame. Each element of the list represent
coordinates of bounding box as tuple <cite>(top-left-x, top-left-y, width, height)</cite>.</p></li>
<li><p><strong>detection_scores</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of detection scores (probability) of each detected object.</p></li>
<li><p><strong>class_ids</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of class_ids (int) corresponding to labels of the detected object. Default is <cite>None</cite>.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>List of tracks being currently tracked by the tracker. Each track is represented by the tuple with elements <cite>(frame_id, track_id, bb_left, bb_top, bb_width, bb_height, conf, x, y, z)</cite>.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>list</p>
</dd>
</dl>
</dd></dl>

</dd></dl>

</section>
<section id="sort">
<h1>SORT<a class="headerlink" href="#sort" title="Permalink to this heading"></a></h1>
<dl class="py function">
<dt class="sig sig-object py" id="motrackers.sort_tracker.assign_tracks2detection_iou">
<span class="sig-prename descclassname"><span class="pre">motrackers.sort_tracker.</span></span><span class="sig-name descname"><span class="pre">assign_tracks2detection_iou</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bbox_tracks</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox_detections</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">iou_threshold</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.3</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/sort_tracker.html#assign_tracks2detection_iou"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.sort_tracker.assign_tracks2detection_iou" title="Permalink to this definition"></a></dt>
<dd><p>Assigns detected bounding boxes to tracked bounding boxes using IoU as a distance metric.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>bbox_tracks</strong> (<em>numpy.ndarray</em>) – Bounding boxes of shape <cite>(N, 4)</cite> where <cite>N</cite> is number of objects already being tracked.</p></li>
<li><p><strong>bbox_detections</strong> (<em>numpy.ndarray</em>) – Bounding boxes of shape <cite>(M, 4)</cite> where <cite>M</cite> is number of objects that are newly detected.</p></li>
<li><p><strong>iou_threshold</strong> (<em>float</em>) – IOU threashold.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><dl class="simple">
<dt>Tuple contains the following elements in the given order:</dt><dd><ul class="simple">
<li><p>matches (numpy.ndarray): Array of shape <cite>(n, 2)</cite> where <cite>n</cite> is number of pairs formed after matching tracks to detections. This is an array of tuples with each element as matched pair of indices`(track_index, detection_index)`.</p></li>
<li><p>unmatched_detections (numpy.ndarray): Array of shape <cite>(m,)</cite> where <cite>m</cite> is number of unmatched detections.</p></li>
<li><p>unmatched_tracks (numpy.ndarray): Array of shape <cite>(k,)</cite> where <cite>k</cite> is the number of unmatched tracks.</p></li>
</ul>
</dd>
</dl>
</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>tuple</p>
</dd>
</dl>
</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.sort_tracker.SORT">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.sort_tracker.</span></span><span class="sig-name descname"><span class="pre">SORT</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">max_lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tracker_output_format</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'mot_challenge'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">iou_threshold</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.3</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">process_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">time_step</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/sort_tracker.html#SORT"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.sort_tracker.SORT" title="Permalink to this definition"></a></dt>
<dd><p>SORT - Multi object tracker.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>max_lost</strong> (<em>int</em>) – Max. number of times a object is lost while tracking.</p></li>
<li><p><strong>tracker_output_format</strong> (<em>str</em>) – Output format of the tracker.</p></li>
<li><p><strong>iou_threshold</strong> (<em>float</em>) – Intersection over union minimum value.</p></li>
<li><p><strong>process_noise_scale</strong> (<em>float</em><em> or </em><em>numpy.ndarray</em>) – Process noise covariance matrix of shape (3, 3)
or covariance magnitude as scalar value.</p></li>
<li><p><strong>measurement_noise_scale</strong> (<em>float</em><em> or </em><em>numpy.ndarray</em>) – Measurement noise covariance matrix of shape (1,)
or covariance magnitude as scalar value.</p></li>
<li><p><strong>time_step</strong> (<em>int</em><em> or </em><em>float</em>) – Time step for Kalman Filter.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.sort_tracker.SORT.update">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bboxes</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_scores</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_ids</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/sort_tracker.html#SORT.update"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.sort_tracker.SORT.update" title="Permalink to this definition"></a></dt>
<dd><p>Update the tracker based on the new bounding boxes.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>bboxes</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of bounding boxes detected in the current frame. Each element of the list represent
coordinates of bounding box as tuple <cite>(top-left-x, top-left-y, width, height)</cite>.</p></li>
<li><p><strong>detection_scores</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of detection scores (probability) of each detected object.</p></li>
<li><p><strong>class_ids</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of class_ids (int) corresponding to labels of the detected object. Default is <cite>None</cite>.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>List of tracks being currently tracked by the tracker. Each track is represented by the tuple with elements <cite>(frame_id, track_id, bb_left, bb_top, bb_width, bb_height, conf, x, y, z)</cite>.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>list</p>
</dd>
</dl>
</dd></dl>

</dd></dl>

</section>
<section id="iou-tracker">
<h1>IOU Tracker<a class="headerlink" href="#iou-tracker" title="Permalink to this heading"></a></h1>
<dl class="py class">
<dt class="sig sig-object py" id="motrackers.iou_tracker.IOUTracker">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.iou_tracker.</span></span><span class="sig-name descname"><span class="pre">IOUTracker</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">max_lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">iou_threshold</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.5</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">min_detection_confidence</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.4</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_detection_confidence</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.7</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tracker_output_format</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'mot_challenge'</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/iou_tracker.html#IOUTracker"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.iou_tracker.IOUTracker" title="Permalink to this definition"></a></dt>
<dd><p>Intersection over Union Tracker.</p>
<p class="rubric">References</p>
<ul class="simple">
<li><p>Implementation of this algorithm is heavily based on <a class="reference external" href="https://github.com/bochinski/iou-tracker">https://github.com/bochinski/iou-tracker</a></p></li>
</ul>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>max_lost</strong> (<em>int</em>) – Maximum number of consecutive frames object was not detected.</p></li>
<li><p><strong>tracker_output_format</strong> (<em>str</em>) – Output format of the tracker.</p></li>
<li><p><strong>min_detection_confidence</strong> (<em>float</em>) – Threshold for minimum detection confidence.</p></li>
<li><p><strong>max_detection_confidence</strong> (<em>float</em>) – Threshold for max. detection confidence.</p></li>
<li><p><strong>iou_threshold</strong> (<em>float</em>) – Intersection over union minimum value.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.iou_tracker.IOUTracker.update">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bboxes</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_scores</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_ids</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/iou_tracker.html#IOUTracker.update"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.iou_tracker.IOUTracker.update" title="Permalink to this definition"></a></dt>
<dd><p>Update the tracker based on the new bounding boxes.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>bboxes</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of bounding boxes detected in the current frame. Each element of the list represent
coordinates of bounding box as tuple <cite>(top-left-x, top-left-y, width, height)</cite>.</p></li>
<li><p><strong>detection_scores</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of detection scores (probability) of each detected object.</p></li>
<li><p><strong>class_ids</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of class_ids (int) corresponding to labels of the detected object. Default is <cite>None</cite>.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>List of tracks being currently tracked by the tracker. Each track is represented by the tuple with elements <cite>(frame_id, track_id, bb_left, bb_top, bb_width, bb_height, conf, x, y, z)</cite>.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>list</p>
</dd>
</dl>
</dd></dl>

</dd></dl>

</section>
<section id="kalman-filter-based-centroid-tracker">
<h1>Kalman Filter based Centroid Tracker<a class="headerlink" href="#kalman-filter-based-centroid-tracker" title="Permalink to this heading"></a></h1>
<dl class="py function">
<dt class="sig sig-object py" id="motrackers.centroid_kf_tracker.assign_tracks2detection_centroid_distances">
<span class="sig-prename descclassname"><span class="pre">motrackers.centroid_kf_tracker.</span></span><span class="sig-name descname"><span class="pre">assign_tracks2detection_centroid_distances</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bbox_tracks</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox_detections</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">distance_threshold</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10.0</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/centroid_kf_tracker.html#assign_tracks2detection_centroid_distances"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.centroid_kf_tracker.assign_tracks2detection_centroid_distances" title="Permalink to this definition"></a></dt>
<dd><p>Assigns detected bounding boxes to tracked bounding boxes using IoU as a distance metric.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>bbox_tracks</strong> (<em>numpy.ndarray</em>) – Tracked bounding boxes with shape <cite>(n, 4)</cite>
and each row as <cite>(xmin, ymin, width, height)</cite>.</p></li>
<li><p><strong>bbox_detections</strong> (<em>numpy.ndarray</em>) – detection bounding boxes with shape <cite>(m, 4)</cite> and
each row as <cite>(xmin, ymin, width, height)</cite>.</p></li>
<li><p><strong>distance_threshold</strong> (<em>float</em>) – Minimum distance between the tracked object
and new detection to consider for assignment.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><dl class="simple">
<dt>Tuple containing the following elements:</dt><dd><ul class="simple">
<li><p>matches (numpy.ndarray): Array of shape <cite>(n, 2)</cite> where <cite>n</cite> is number of pairs formed after matching tracks to detections. This is an array of tuples with each element as matched pair of indices`(track_index, detection_index)`.</p></li>
<li><p>unmatched_detections (numpy.ndarray): Array of shape <cite>(m,)</cite> where <cite>m</cite> is number of unmatched detections.</p></li>
<li><p>unmatched_tracks (numpy.ndarray): Array of shape <cite>(k,)</cite> where <cite>k</cite> is the number of unmatched tracks.</p></li>
</ul>
</dd>
</dl>
</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>tuple</p>
</dd>
</dl>
</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.centroid_kf_tracker.CentroidKF_Tracker">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.centroid_kf_tracker.</span></span><span class="sig-name descname"><span class="pre">CentroidKF_Tracker</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">max_lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">centroid_distance_threshold</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">30.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tracker_output_format</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'mot_challenge'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">process_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">time_step</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/centroid_kf_tracker.html#CentroidKF_Tracker"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.centroid_kf_tracker.CentroidKF_Tracker" title="Permalink to this definition"></a></dt>
<dd><p>Kalman filter based tracking of multiple detected objects.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>max_lost</strong> (<em>int</em>) – Maximum number of consecutive frames object was not detected.</p></li>
<li><p><strong>tracker_output_format</strong> (<em>str</em>) – Output format of the tracker.</p></li>
<li><p><strong>process_noise_scale</strong> (<em>float</em><em> or </em><em>numpy.ndarray</em>) – Process noise covariance matrix of shape (3, 3) or
covariance magnitude as scalar value.</p></li>
<li><p><strong>measurement_noise_scale</strong> (<em>float</em><em> or </em><em>numpy.ndarray</em>) – Measurement noise covariance matrix of shape (1,)
or covariance magnitude as scalar value.</p></li>
<li><p><strong>time_step</strong> (<em>int</em><em> or </em><em>float</em>) – Time step for Kalman Filter.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.centroid_kf_tracker.CentroidKF_Tracker.update">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bboxes</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_scores</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_ids</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/centroid_kf_tracker.html#CentroidKF_Tracker.update"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.centroid_kf_tracker.CentroidKF_Tracker.update" title="Permalink to this definition"></a></dt>
<dd><p>Update the tracker based on the new bounding boxes.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>bboxes</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of bounding boxes detected in the current frame. Each element of the list represent
coordinates of bounding box as tuple <cite>(top-left-x, top-left-y, width, height)</cite>.</p></li>
<li><p><strong>detection_scores</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of detection scores (probability) of each detected object.</p></li>
<li><p><strong>class_ids</strong> (<em>numpy.ndarray</em><em> or </em><em>list</em>) – List of class_ids (int) corresponding to labels of the detected object. Default is <cite>None</cite>.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>List of tracks being currently tracked by the tracker. Each track is represented by the tuple with elements <cite>(frame_id, track_id, bb_left, bb_top, bb_width, bb_height, conf, x, y, z)</cite>.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>list</p>
</dd>
</dl>
</dd></dl>

</dd></dl>

</section>
<section id="tracks">
<h1>Tracks<a class="headerlink" href="#tracks" title="Permalink to this heading"></a></h1>
<dl class="py class">
<dt class="sig sig-object py" id="motrackers.track.Track">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.track.</span></span><span class="sig-name descname"><span class="pre">Track</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">track_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_confidence</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_id</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">iou_score</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">data_output_format</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'mot_challenge'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#Track"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.Track" title="Permalink to this definition"></a></dt>
<dd><p>Track containing attributes to track various objects.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>frame_id</strong> (<em>int</em>) – Camera frame id.</p></li>
<li><p><strong>track_id</strong> (<em>int</em>) – Track Id</p></li>
<li><p><strong>bbox</strong> (<em>numpy.ndarray</em>) – Bounding box pixel coordinates as (xmin, ymin, width, height) of the track.</p></li>
<li><p><strong>detection_confidence</strong> (<em>float</em>) – Detection confidence of the object (probability).</p></li>
<li><p><strong>class_id</strong> (<em>str</em><em> or </em><em>int</em>) – Class label id.</p></li>
<li><p><strong>lost</strong> (<em>int</em>) – Number of times the object or track was not tracked by tracker in consecutive frames.</p></li>
<li><p><strong>iou_score</strong> (<em>float</em>) – Intersection over union score.</p></li>
<li><p><strong>data_output_format</strong> (<em>str</em>) – Output format for data in tracker.
Options include <code class="docutils literal notranslate"><span class="pre">['mot_challenge',</span> <span class="pre">'visdrone_challenge']</span></code>. Default is <code class="docutils literal notranslate"><span class="pre">mot_challenge</span></code>.</p></li>
<li><p><strong>kwargs</strong> (<em>dict</em>) – Additional key word arguments.</p></li>
</ul>
</dd>
</dl>
<dl class="py property">
<dt class="sig sig-object py" id="motrackers.track.Track.centroid">
<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">centroid</span></span><a class="headerlink" href="#motrackers.track.Track.centroid" title="Permalink to this definition"></a></dt>
<dd><p>Return the centroid of the bounding box.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>Centroid (x, y) of bounding box.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.track.Track.get_mot_challenge_format">
<span class="sig-name descname"><span class="pre">get_mot_challenge_format</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#Track.get_mot_challenge_format"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.Track.get_mot_challenge_format" title="Permalink to this definition"></a></dt>
<dd><p>Get the tracker data in MOT challenge format as a tuple of elements containing
<cite>(frame, id, bb_left, bb_top, bb_width, bb_height, conf, x, y, z)</cite></p>
<p class="rubric">References</p>
<ul class="simple">
<li><p>Website : <a class="reference external" href="https://motchallenge.net/">https://motchallenge.net/</a></p></li>
</ul>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>Tuple of 10 elements representing <cite>(frame, id, bb_left, bb_top, bb_width, bb_height, conf, x, y, z)</cite>.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>tuple</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.track.Track.get_vis_drone_format">
<span class="sig-name descname"><span class="pre">get_vis_drone_format</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#Track.get_vis_drone_format"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.Track.get_vis_drone_format" title="Permalink to this definition"></a></dt>
<dd><p>Track data output in VISDRONE Challenge format with tuple as
<cite>(frame_index, target_id, bbox_left, bbox_top, bbox_width, bbox_height, score, object_category,
truncation, occlusion)</cite>.</p>
<p class="rubric">References</p>
<ul class="simple">
<li><p>Website : <a class="reference external" href="http://aiskyeye.com/">http://aiskyeye.com/</a></p></li>
<li><p>Paper : <a class="reference external" href="https://arxiv.org/abs/2001.06303">https://arxiv.org/abs/2001.06303</a></p></li>
<li><p>GitHub : <a class="reference external" href="https://github.com/VisDrone/VisDrone2018-MOT-toolkit">https://github.com/VisDrone/VisDrone2018-MOT-toolkit</a></p></li>
<li><p>GitHub : <a class="reference external" href="https://github.com/VisDrone/">https://github.com/VisDrone/</a></p></li>
</ul>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>Tuple containing the elements as <cite>(frame_index, target_id, bbox_left, bbox_top, bbox_width, bbox_height,
score, object_category, truncation, occlusion)</cite>.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>tuple</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.track.Track.predict">
<span class="sig-name descname"><span class="pre">predict</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#Track.predict"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.Track.predict" title="Permalink to this definition"></a></dt>
<dd><p>Implement to prediction the next estimate of track.</p>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.track.Track.update">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">frame_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_confidence</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_id</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">iou_score</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#Track.update"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.Track.update" title="Permalink to this definition"></a></dt>
<dd><p>Update the track.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>frame_id</strong> (<em>int</em>) – Camera frame id.</p></li>
<li><p><strong>bbox</strong> (<em>numpy.ndarray</em>) – Bounding box pixel coordinates as (xmin, ymin, width, height) of the track.</p></li>
<li><p><strong>detection_confidence</strong> (<em>float</em>) – Detection confidence of the object (probability).</p></li>
<li><p><strong>class_id</strong> (<em>int</em><em> or </em><em>str</em>) – Class label id.</p></li>
<li><p><strong>lost</strong> (<em>int</em>) – Number of times the object or track was not tracked by tracker in consecutive frames.</p></li>
<li><p><strong>iou_score</strong> (<em>float</em>) – Intersection over union score.</p></li>
<li><p><strong>kwargs</strong> (<em>dict</em>) – Additional key word arguments.</p></li>
</ul>
</dd>
</dl>
</dd></dl>

</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.track.KFTrackSORT">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.track.</span></span><span class="sig-name descname"><span class="pre">KFTrackSORT</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">track_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_confidence</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_id</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">iou_score</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">data_output_format</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'mot_challenge'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">process_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#KFTrackSORT"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.KFTrackSORT" title="Permalink to this definition"></a></dt>
<dd><p>Track based on Kalman filter tracker used for SORT MOT-Algorithm.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>track_id</strong> (<em>int</em>) – Track Id</p></li>
<li><p><strong>frame_id</strong> (<em>int</em>) – Camera frame id.</p></li>
<li><p><strong>bbox</strong> (<em>numpy.ndarray</em>) – Bounding box pixel coordinates as (xmin, ymin, width, height) of the track.</p></li>
<li><p><strong>detection_confidence</strong> (<em>float</em>) – Detection confidence of the object (probability).</p></li>
<li><p><strong>class_id</strong> (<em>str</em><em> or </em><em>int</em>) – Class label id.</p></li>
<li><p><strong>lost</strong> (<em>int</em>) – Number of times the object or track was not tracked by tracker in consecutive frames.</p></li>
<li><p><strong>iou_score</strong> (<em>float</em>) – Intersection over union score.</p></li>
<li><p><strong>data_output_format</strong> (<em>str</em>) – Output format for data in tracker.
Options <code class="docutils literal notranslate"><span class="pre">['mot_challenge',</span> <span class="pre">'visdrone_challenge']</span></code>. Default is <code class="docutils literal notranslate"><span class="pre">mot_challenge</span></code>.</p></li>
<li><p><strong>process_noise_scale</strong> (<em>float</em>) – Process noise covariance scale or covariance magnitude as scalar value.</p></li>
<li><p><strong>measurement_noise_scale</strong> (<em>float</em>) – Measurement noise covariance scale or covariance magnitude as scalar value.</p></li>
<li><p><strong>kwargs</strong> (<em>dict</em>) – Additional key word arguments.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.track.KFTrackSORT.predict">
<span class="sig-name descname"><span class="pre">predict</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#KFTrackSORT.predict"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.KFTrackSORT.predict" title="Permalink to this definition"></a></dt>
<dd><p>Predicts the next estimate of the bounding box of the track.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>Bounding box pixel coordinates as (xmin, ymin, width, height) of the track.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.track.KFTrackSORT.update">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">frame_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_confidence</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_id</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">iou_score</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#KFTrackSORT.update"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.KFTrackSORT.update" title="Permalink to this definition"></a></dt>
<dd><p>Update the track.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>frame_id</strong> (<em>int</em>) – Camera frame id.</p></li>
<li><p><strong>bbox</strong> (<em>numpy.ndarray</em>) – Bounding box pixel coordinates as (xmin, ymin, width, height) of the track.</p></li>
<li><p><strong>detection_confidence</strong> (<em>float</em>) – Detection confidence of the object (probability).</p></li>
<li><p><strong>class_id</strong> (<em>int</em><em> or </em><em>str</em>) – Class label id.</p></li>
<li><p><strong>lost</strong> (<em>int</em>) – Number of times the object or track was not tracked by tracker in consecutive frames.</p></li>
<li><p><strong>iou_score</strong> (<em>float</em>) – Intersection over union score.</p></li>
<li><p><strong>kwargs</strong> (<em>dict</em>) – Additional key word arguments.</p></li>
</ul>
</dd>
</dl>
</dd></dl>

</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.track.KFTrack4DSORT">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.track.</span></span><span class="sig-name descname"><span class="pre">KFTrack4DSORT</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">track_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_confidence</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_id</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">iou_score</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">data_output_format</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'mot_challenge'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">process_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">kf_time_step</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#KFTrack4DSORT"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.KFTrack4DSORT" title="Permalink to this definition"></a></dt>
<dd><p>Track based on Kalman filter tracker used for SORT MOT-Algorithm.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>track_id</strong> (<em>int</em>) – Track Id</p></li>
<li><p><strong>frame_id</strong> (<em>int</em>) – Camera frame id.</p></li>
<li><p><strong>bbox</strong> (<em>numpy.ndarray</em>) – Bounding box pixel coordinates as (xmin, ymin, width, height) of the track.</p></li>
<li><p><strong>detection_confidence</strong> (<em>float</em>) – Detection confidence of the object (probability).</p></li>
<li><p><strong>class_id</strong> (<em>str</em><em> or </em><em>int</em>) – Class label id.</p></li>
<li><p><strong>lost</strong> (<em>int</em>) – Number of times the object or track was not tracked by tracker in consecutive frames.</p></li>
<li><p><strong>iou_score</strong> (<em>float</em>) – Intersection over union score.</p></li>
<li><p><strong>data_output_format</strong> (<em>str</em>) – Output format for data in tracker.
Options <code class="docutils literal notranslate"><span class="pre">['mot_challenge',</span> <span class="pre">'visdrone_challenge']</span></code>. Default is <code class="docutils literal notranslate"><span class="pre">mot_challenge</span></code>.</p></li>
<li><p><strong>process_noise_scale</strong> (<em>float</em>) – Process noise covariance scale or covariance magnitude as scalar value.</p></li>
<li><p><strong>measurement_noise_scale</strong> (<em>float</em>) – Measurement noise covariance scale or covariance magnitude as scalar value.</p></li>
<li><p><strong>kwargs</strong> (<em>dict</em>) – Additional key word arguments.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.track.KFTrack4DSORT.predict">
<span class="sig-name descname"><span class="pre">predict</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#KFTrack4DSORT.predict"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.KFTrack4DSORT.predict" title="Permalink to this definition"></a></dt>
<dd><p>Implement to prediction the next estimate of track.</p>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.track.KFTrack4DSORT.update">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">frame_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_confidence</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_id</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">iou_score</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#KFTrack4DSORT.update"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.KFTrack4DSORT.update" title="Permalink to this definition"></a></dt>
<dd><p>Update the track.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>frame_id</strong> (<em>int</em>) – Camera frame id.</p></li>
<li><p><strong>bbox</strong> (<em>numpy.ndarray</em>) – Bounding box pixel coordinates as (xmin, ymin, width, height) of the track.</p></li>
<li><p><strong>detection_confidence</strong> (<em>float</em>) – Detection confidence of the object (probability).</p></li>
<li><p><strong>class_id</strong> (<em>int</em><em> or </em><em>str</em>) – Class label id.</p></li>
<li><p><strong>lost</strong> (<em>int</em>) – Number of times the object or track was not tracked by tracker in consecutive frames.</p></li>
<li><p><strong>iou_score</strong> (<em>float</em>) – Intersection over union score.</p></li>
<li><p><strong>kwargs</strong> (<em>dict</em>) – Additional key word arguments.</p></li>
</ul>
</dd>
</dl>
</dd></dl>

</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.track.KFTrackCentroid">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.track.</span></span><span class="sig-name descname"><span class="pre">KFTrackCentroid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">track_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_confidence</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_id</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">iou_score</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">data_output_format</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'mot_challenge'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">process_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#KFTrackCentroid"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.KFTrackCentroid" title="Permalink to this definition"></a></dt>
<dd><p>Track based on Kalman filter used for Centroid Tracking of bounding box in MOT.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>track_id</strong> (<em>int</em>) – Track Id</p></li>
<li><p><strong>frame_id</strong> (<em>int</em>) – Camera frame id.</p></li>
<li><p><strong>bbox</strong> (<em>numpy.ndarray</em>) – Bounding box pixel coordinates as (xmin, ymin, width, height) of the track.</p></li>
<li><p><strong>detection_confidence</strong> (<em>float</em>) – Detection confidence of the object (probability).</p></li>
<li><p><strong>class_id</strong> (<em>str</em><em> or </em><em>int</em>) – Class label id.</p></li>
<li><p><strong>lost</strong> (<em>int</em>) – Number of times the object or track was not tracked by tracker in consecutive frames.</p></li>
<li><p><strong>iou_score</strong> (<em>float</em>) – Intersection over union score.</p></li>
<li><p><strong>data_output_format</strong> (<em>str</em>) – Output format for data in tracker.
Options <code class="docutils literal notranslate"><span class="pre">['mot_challenge',</span> <span class="pre">'visdrone_challenge']</span></code>. Default is <code class="docutils literal notranslate"><span class="pre">mot_challenge</span></code>.</p></li>
<li><p><strong>process_noise_scale</strong> (<em>float</em>) – Process noise covariance scale or covariance magnitude as scalar value.</p></li>
<li><p><strong>measurement_noise_scale</strong> (<em>float</em>) – Measurement noise covariance scale or covariance magnitude as scalar value.</p></li>
<li><p><strong>kwargs</strong> (<em>dict</em>) – Additional key word arguments.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.track.KFTrackCentroid.predict">
<span class="sig-name descname"><span class="pre">predict</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#KFTrackCentroid.predict"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.KFTrackCentroid.predict" title="Permalink to this definition"></a></dt>
<dd><p>Predicts the next estimate of the bounding box of the track.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>Bounding box pixel coordinates as (xmin, ymin, width, height) of the track.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.track.KFTrackCentroid.update">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">frame_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">detection_confidence</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_id</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lost</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">iou_score</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/track.html#KFTrackCentroid.update"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.track.KFTrackCentroid.update" title="Permalink to this definition"></a></dt>
<dd><p>Update the track.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>frame_id</strong> (<em>int</em>) – Camera frame id.</p></li>
<li><p><strong>bbox</strong> (<em>numpy.ndarray</em>) – Bounding box pixel coordinates as (xmin, ymin, width, height) of the track.</p></li>
<li><p><strong>detection_confidence</strong> (<em>float</em>) – Detection confidence of the object (probability).</p></li>
<li><p><strong>class_id</strong> (<em>int</em><em> or </em><em>str</em>) – Class label id.</p></li>
<li><p><strong>lost</strong> (<em>int</em>) – Number of times the object or track was not tracked by tracker in consecutive frames.</p></li>
<li><p><strong>iou_score</strong> (<em>float</em>) – Intersection over union score.</p></li>
<li><p><strong>kwargs</strong> (<em>dict</em>) – Additional key word arguments.</p></li>
</ul>
</dd>
</dl>
</dd></dl>

</dd></dl>

</section>
<section id="kalman-filters">
<h1>Kalman Filters<a class="headerlink" href="#kalman-filters" title="Permalink to this heading"></a></h1>
<dl class="py class">
<dt class="sig sig-object py" id="motrackers.kalman_tracker.KalmanFilter">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.kalman_tracker.</span></span><span class="sig-name descname"><span class="pre">KalmanFilter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">transition_matrix</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_matrix</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">control_matrix</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">process_noise_covariance</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_noise_covariance</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">prediction_covariance</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">initial_state</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/kalman_tracker.html#KalmanFilter"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.kalman_tracker.KalmanFilter" title="Permalink to this definition"></a></dt>
<dd><p>Kalman Filter Implementation.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>transition_matrix</strong> (<em>numpy.ndarray</em>) – Transition matrix of shape <code class="docutils literal notranslate"><span class="pre">(n,</span> <span class="pre">n)</span></code>.</p></li>
<li><p><strong>measurement_matrix</strong> (<em>numpy.ndarray</em>) – Measurement matrix of shape <code class="docutils literal notranslate"><span class="pre">(m,</span> <span class="pre">n)</span></code>.</p></li>
<li><p><strong>control_matrix</strong> (<em>numpy.ndarray</em>) – Control matrix of shape <code class="docutils literal notranslate"><span class="pre">(m,</span> <span class="pre">n)</span></code>.</p></li>
<li><p><strong>process_noise_covariance</strong> (<em>numpy.ndarray</em>) – Covariance matrix of shape <code class="docutils literal notranslate"><span class="pre">(n,</span> <span class="pre">n)</span></code>.</p></li>
<li><p><strong>measurement_noise_covariance</strong> (<em>numpy.ndarray</em>) – Covariance matrix of shape <code class="docutils literal notranslate"><span class="pre">(m,</span> <span class="pre">m)</span></code>.</p></li>
<li><p><strong>prediction_covariance</strong> (<em>numpy.ndarray</em>) – Predicted (a priori) estimate covariance of shape <code class="docutils literal notranslate"><span class="pre">(n,</span> <span class="pre">n)</span></code>.</p></li>
<li><p><strong>initial_state</strong> (<em>numpy.ndarray</em>) – Initial state of shape <code class="docutils literal notranslate"><span class="pre">(n,)</span></code>.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.kalman_tracker.KalmanFilter.predict">
<span class="sig-name descname"><span class="pre">predict</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">u</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/kalman_tracker.html#KalmanFilter.predict"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.kalman_tracker.KalmanFilter.predict" title="Permalink to this definition"></a></dt>
<dd><p>Prediction step of Kalman Filter.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>u</strong> (<em>float</em><em> or </em><em>int</em><em> or </em><em>numpy.ndarray</em>) – Control input. Default is <cite>0</cite>.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>State vector of shape <cite>(n,)</cite>.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.kalman_tracker.KalmanFilter.update">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">z</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/kalman_tracker.html#KalmanFilter.update"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.kalman_tracker.KalmanFilter.update" title="Permalink to this definition"></a></dt>
<dd><p>Measurement update of Kalman Filter.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>z</strong> (<em>numpy.ndarray</em>) – Measurement vector of the system with shape <code class="docutils literal notranslate"><span class="pre">(m,)</span></code>.</p>
</dd>
</dl>
</dd></dl>

</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.kalman_tracker.KFTrackerConstantAcceleration">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.kalman_tracker.</span></span><span class="sig-name descname"><span class="pre">KFTrackerConstantAcceleration</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">initial_measurement</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">time_step</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">process_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/kalman_tracker.html#KFTrackerConstantAcceleration"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.kalman_tracker.KFTrackerConstantAcceleration" title="Permalink to this definition"></a></dt>
<dd><p>Kalman Filter with constant acceleration kinematic model.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>initial_measurement</strong> (<em>numpy.ndarray</em>) – Initial state of the tracker.</p></li>
<li><p><strong>time_step</strong> (<em>float</em>) – Time step.</p></li>
<li><p><strong>process_noise_scale</strong> (<em>float</em>) – Process noise covariance scale.
or covariance magnitude as scalar value.</p></li>
<li><p><strong>measurement_noise_scale</strong> (<em>float</em>) – Measurement noise covariance scale.
or covariance magnitude as scalar value.</p></li>
</ul>
</dd>
</dl>
</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.kalman_tracker.KFTracker1D">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.kalman_tracker.</span></span><span class="sig-name descname"><span class="pre">KFTracker1D</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">initial_measurement</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">array([0.0])</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">time_step</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">process_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/kalman_tracker.html#KFTracker1D"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.kalman_tracker.KFTracker1D" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.kalman_tracker.KFTracker2D">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.kalman_tracker.</span></span><span class="sig-name descname"><span class="pre">KFTracker2D</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">initial_measurement</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">array([0.0,</span> <span class="pre">0.0])</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">time_step</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">process_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/kalman_tracker.html#KFTracker2D"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.kalman_tracker.KFTracker2D" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.kalman_tracker.KFTracker4D">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.kalman_tracker.</span></span><span class="sig-name descname"><span class="pre">KFTracker4D</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">initial_measurement</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">array([0.0,</span> <span class="pre">0.0,</span> <span class="pre">0.0,</span> <span class="pre">0.0])</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">time_step</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">process_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/kalman_tracker.html#KFTracker4D"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.kalman_tracker.KFTracker4D" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.kalman_tracker.KFTrackerSORT">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.kalman_tracker.</span></span><span class="sig-name descname"><span class="pre">KFTrackerSORT</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bbox</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">process_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">measurement_noise_scale</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">time_step</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/kalman_tracker.html#KFTrackerSORT"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.kalman_tracker.KFTrackerSORT" title="Permalink to this definition"></a></dt>
<dd><p>Kalman filter for <code class="docutils literal notranslate"><span class="pre">SORT</span></code>.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>bbox</strong> (<em>numpy.ndarray</em>) – Bounding box coordinates as <code class="docutils literal notranslate"><span class="pre">(xmid,</span> <span class="pre">ymid,</span> <span class="pre">area,</span> <span class="pre">aspect_ratio)</span></code>.</p></li>
<li><p><strong>time_step</strong> (<em>float</em><em> or </em><em>int</em>) – Time step.</p></li>
<li><p><strong>process_noise_scale</strong> (<em>float</em>) – Scale (a.k.a covariance) of the process noise.</p></li>
<li><p><strong>measurement_noise_scale</strong> (<em>float</em>) – Scale (a.k.a. covariance) of the measurement noise.</p></li>
</ul>
</dd>
</dl>
</dd></dl>

</section>
<section id="object-detection">
<h1>Object Detection<a class="headerlink" href="#object-detection" title="Permalink to this heading"></a></h1>
<dl class="py class">
<dt class="sig sig-object py" id="motrackers.detectors.detector.Detector">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.detectors.detector.</span></span><span class="sig-name descname"><span class="pre">Detector</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object_names</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">confidence_threshold</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">nms_threshold</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">draw_bboxes</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/detectors/detector.html#Detector"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.detectors.detector.Detector" title="Permalink to this definition"></a></dt>
<dd><p>Abstract class for detector.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>object_names</strong> (<em>dict</em>) – Dictionary containing (key, value) as (class_id, class_name) for object detector.</p></li>
<li><p><strong>confidence_threshold</strong> (<em>float</em>) – Confidence threshold for object detection.</p></li>
<li><p><strong>nms_threshold</strong> (<em>float</em>) – Threshold for non-maximal suppression.</p></li>
<li><p><strong>draw_bboxes</strong> (<em>bool</em>) – If true, draw bounding boxes on the image is possible.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.detectors.detector.Detector.detect">
<span class="sig-name descname"><span class="pre">detect</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">image</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/detectors/detector.html#Detector.detect"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.detectors.detector.Detector.detect" title="Permalink to this definition"></a></dt>
<dd><p>Detect objects in the input image.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>image</strong> (<em>numpy.ndarray</em>) – Input image.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><dl class="simple">
<dt>Tuple containing the following elements:</dt><dd><ul class="simple">
<li><p>bboxes (numpy.ndarray): Bounding boxes with shape (n, 4) containing detected objects with each row as <cite>(xmin, ymin, width, height)</cite>.</p></li>
<li><p>confidences (numpy.ndarray): Confidence or detection probabilities if the detected objects with shape (n,).</p></li>
<li><p>class_ids (numpy.ndarray): Class_ids or label_ids of detected objects with shape (n, 4)</p></li>
</ul>
</dd>
</dl>
</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>tuple</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.detectors.detector.Detector.draw_bboxes">
<span class="sig-name descname"><span class="pre">draw_bboxes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">image</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bboxes</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">confidences</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">class_ids</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/detectors/detector.html#Detector.draw_bboxes"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.detectors.detector.Detector.draw_bboxes" title="Permalink to this definition"></a></dt>
<dd><p>Draw the bounding boxes about detected objects in the image.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>image</strong> (<em>numpy.ndarray</em>) – Image or video frame.</p></li>
<li><p><strong>bboxes</strong> (<em>numpy.ndarray</em>) – Bounding boxes pixel coordinates as (xmin, ymin, width, height)</p></li>
<li><p><strong>confidences</strong> (<em>numpy.ndarray</em>) – Detection confidence or detection probability.</p></li>
<li><p><strong>class_ids</strong> (<em>numpy.ndarray</em>) – Array containing class ids (aka label ids) of each detected object.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>image with the bounding boxes drawn on it.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.detectors.detector.Detector.forward">
<span class="sig-name descname"><span class="pre">forward</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">image</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/detectors/detector.html#Detector.forward"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.detectors.detector.Detector.forward" title="Permalink to this definition"></a></dt>
<dd><p>Forward pass for the detector with input image.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>image</strong> (<em>numpy.ndarray</em>) – Input image.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>detections</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.detectors.caffe.Caffe_SSDMobileNet">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.detectors.caffe.</span></span><span class="sig-name descname"><span class="pre">Caffe_SSDMobileNet</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">weights_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">configfile_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">labels_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">confidence_threshold</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.5</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">nms_threshold</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">draw_bboxes</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_gpu</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/detectors/caffe.html#Caffe_SSDMobileNet"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.detectors.caffe.Caffe_SSDMobileNet" title="Permalink to this definition"></a></dt>
<dd><p>Caffe SSD MobileNet model for Object Detection.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>weights_path</strong> (<em>str</em>) – path to network weights file.</p></li>
<li><p><strong>configfile_path</strong> (<em>str</em>) – path to network configuration file.</p></li>
<li><p><strong>labels_path</strong> (<em>str</em>) – path to data labels json file.</p></li>
<li><p><strong>confidence_threshold</strong> (<em>float</em>) – confidence threshold to select the detected object.</p></li>
<li><p><strong>nms_threshold</strong> (<em>float</em>) – Non-maximum suppression threshold.</p></li>
<li><p><strong>draw_bboxes</strong> (<em>bool</em>) – If True, assign colors for drawing bounding boxes on the image.</p></li>
<li><p><strong>use_gpu</strong> (<em>bool</em>) – If True, try to load the model on GPU.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.detectors.caffe.Caffe_SSDMobileNet.forward">
<span class="sig-name descname"><span class="pre">forward</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">image</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/detectors/caffe.html#Caffe_SSDMobileNet.forward"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.detectors.caffe.Caffe_SSDMobileNet.forward" title="Permalink to this definition"></a></dt>
<dd><p>Forward pass for the detector with input image.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>image</strong> (<em>numpy.ndarray</em>) – Input image.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>detections</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.detectors.tf.TF_SSDMobileNetV2">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.detectors.tf.</span></span><span class="sig-name descname"><span class="pre">TF_SSDMobileNetV2</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">weights_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">configfile_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">labels_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">confidence_threshold</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.5</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">nms_threshold</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.4</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">draw_bboxes</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_gpu</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/detectors/tf.html#TF_SSDMobileNetV2"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.detectors.tf.TF_SSDMobileNetV2" title="Permalink to this definition"></a></dt>
<dd><p>Tensorflow SSD MobileNetv2 model for Object Detection.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>weights_path</strong> (<em>str</em>) – path to network weights file.</p></li>
<li><p><strong>configfile_path</strong> (<em>str</em>) – path to network configuration file.</p></li>
<li><p><strong>labels_path</strong> (<em>str</em>) – path to data labels json file.</p></li>
<li><p><strong>confidence_threshold</strong> (<em>float</em>) – confidence threshold to select the detected object.</p></li>
<li><p><strong>nms_threshold</strong> (<em>float</em>) – Non-maximum suppression threshold.</p></li>
<li><p><strong>draw_bboxes</strong> (<em>bool</em>) – If True, assign colors for drawing bounding boxes on the image.</p></li>
<li><p><strong>use_gpu</strong> (<em>bool</em>) – If True, try to load the model on GPU.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.detectors.tf.TF_SSDMobileNetV2.forward">
<span class="sig-name descname"><span class="pre">forward</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">image</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/detectors/tf.html#TF_SSDMobileNetV2.forward"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.detectors.tf.TF_SSDMobileNetV2.forward" title="Permalink to this definition"></a></dt>
<dd><p>Forward pass for the detector with input image.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>image</strong> (<em>numpy.ndarray</em>) – Input image.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>detections</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="motrackers.detectors.yolo.YOLOv3">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">motrackers.detectors.yolo.</span></span><span class="sig-name descname"><span class="pre">YOLOv3</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">weights_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">configfile_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">labels_path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">confidence_threshold</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.5</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">nms_threshold</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">draw_bboxes</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_gpu</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/detectors/yolo.html#YOLOv3"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.detectors.yolo.YOLOv3" title="Permalink to this definition"></a></dt>
<dd><p>YOLOv3 Object Detector Module.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>weights_path</strong> (<em>str</em>) – path to network weights file.</p></li>
<li><p><strong>configfile_path</strong> (<em>str</em>) – path to network configuration file.</p></li>
<li><p><strong>labels_path</strong> (<em>str</em>) – path to data labels json file.</p></li>
<li><p><strong>confidence_threshold</strong> (<em>float</em>) – confidence threshold to select the detected object.</p></li>
<li><p><strong>nms_threshold</strong> (<em>float</em>) – Non-maximum suppression threshold.</p></li>
<li><p><strong>draw_bboxes</strong> (<em>bool</em>) – If True, assign colors for drawing bounding boxes on the image.</p></li>
<li><p><strong>use_gpu</strong> (<em>bool</em>) – If True, try to load the model on GPU.</p></li>
</ul>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="motrackers.detectors.yolo.YOLOv3.detect">
<span class="sig-name descname"><span class="pre">detect</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">image</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/detectors/yolo.html#YOLOv3.detect"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.detectors.yolo.YOLOv3.detect" title="Permalink to this definition"></a></dt>
<dd><p>Detect objects in the input image.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>image</strong> (<em>numpy.ndarray</em>) – Input image.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><dl class="simple">
<dt>Tuple containing the following elements:</dt><dd><ul class="simple">
<li><p>bboxes (numpy.ndarray): Bounding boxes with shape (n, 4) containing detected objects with each row as <cite>(xmin, ymin, width, height)</cite>.</p></li>
<li><p>confidences (numpy.ndarray): Confidence or detection probabilities if the detected objects with shape (n,).</p></li>
<li><p>class_ids (numpy.ndarray): Class_ids or label_ids of detected objects with shape (n, 4)</p></li>
</ul>
</dd>
</dl>
</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>tuple</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="motrackers.detectors.yolo.YOLOv3.forward">
<span class="sig-name descname"><span class="pre">forward</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">image</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/detectors/yolo.html#YOLOv3.forward"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.detectors.yolo.YOLOv3.forward" title="Permalink to this definition"></a></dt>
<dd><p>Forward pass for the detector with input image.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>image</strong> (<em>numpy.ndarray</em>) – Input image.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>detections</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

</dd></dl>

</section>
<section id="utilities">
<h1>Utilities<a class="headerlink" href="#utilities" title="Permalink to this heading"></a></h1>
<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.misc.get_centroid">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.misc.</span></span><span class="sig-name descname"><span class="pre">get_centroid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bboxes</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/misc.html#get_centroid"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.misc.get_centroid" title="Permalink to this definition"></a></dt>
<dd><p>Calculate centroids for multiple bounding boxes.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>bboxes</strong> (<em>numpy.ndarray</em>) – Array of shape <cite>(n, 4)</cite> or of shape <cite>(4,)</cite> where
each row contains <cite>(xmin, ymin, width, height)</cite>.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>Centroid (x, y) coordinates of shape <cite>(n, 2)</cite> or <cite>(2,)</cite>.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.misc.iou">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.misc.</span></span><span class="sig-name descname"><span class="pre">iou</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bbox1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox2</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/misc.html#iou"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.misc.iou" title="Permalink to this definition"></a></dt>
<dd><p>Calculates the intersection-over-union of two bounding boxes.
Source: <a class="reference external" href="https://github.com/bochinski/iou-tracker/blob/master/util.py">https://github.com/bochinski/iou-tracker/blob/master/util.py</a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>bbox1</strong> (<em>numpy.array</em><em> or </em><em>list</em><em>[</em><em>floats</em><em>]</em>) – Bounding box of length 4 containing
<code class="docutils literal notranslate"><span class="pre">(x-top-left,</span> <span class="pre">y-top-left,</span> <span class="pre">x-bottom-right,</span> <span class="pre">y-bottom-right)</span></code>.</p></li>
<li><p><strong>bbox2</strong> (<em>numpy.array</em><em> or </em><em>list</em><em>[</em><em>floats</em><em>]</em>) – Bounding box of length 4 containing
<code class="docutils literal notranslate"><span class="pre">(x-top-left,</span> <span class="pre">y-top-left,</span> <span class="pre">x-bottom-right,</span> <span class="pre">y-bottom-right)</span></code>.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>intersection-over-onion of bbox1, bbox2.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>float</p>
</dd>
</dl>
</dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.misc.iou_xywh">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.misc.</span></span><span class="sig-name descname"><span class="pre">iou_xywh</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">bbox1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bbox2</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/misc.html#iou_xywh"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.misc.iou_xywh" title="Permalink to this definition"></a></dt>
<dd><p>Calculates the intersection-over-union of two bounding boxes.
Source: <a class="reference external" href="https://github.com/bochinski/iou-tracker/blob/master/util.py">https://github.com/bochinski/iou-tracker/blob/master/util.py</a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>bbox1</strong> (<em>numpy.array</em><em> or </em><em>list</em><em>[</em><em>floats</em><em>]</em>) – bounding box of length 4 containing <code class="docutils literal notranslate"><span class="pre">(x-top-left,</span> <span class="pre">y-top-left,</span> <span class="pre">width,</span> <span class="pre">height)</span></code>.</p></li>
<li><p><strong>bbox2</strong> (<em>numpy.array</em><em> or </em><em>list</em><em>[</em><em>floats</em><em>]</em>) – bounding box of length 4 containing <code class="docutils literal notranslate"><span class="pre">(x-top-left,</span> <span class="pre">y-top-left,</span> <span class="pre">width,</span> <span class="pre">height)</span></code>.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>intersection-over-onion of bbox1, bbox2.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>float</p>
</dd>
</dl>
</dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.misc.xyxy2xywh">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.misc.</span></span><span class="sig-name descname"><span class="pre">xyxy2xywh</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">xyxy</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/misc.html#xyxy2xywh"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.misc.xyxy2xywh" title="Permalink to this definition"></a></dt>
<dd><p>Convert bounding box coordinates from (xmin, ymin, xmax, ymax) format to (xmin, ymin, width, height).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>xyxy</strong> (<em>numpy.ndarray</em>) – </p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>Bounding box coordinates (xmin, ymin, width, height).</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.misc.xywh2xyxy">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.misc.</span></span><span class="sig-name descname"><span class="pre">xywh2xyxy</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">xywh</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/misc.html#xywh2xyxy"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.misc.xywh2xyxy" title="Permalink to this definition"></a></dt>
<dd><p>Convert bounding box coordinates from (xmin, ymin, width, height) to (xmin, ymin, xmax, ymax) format.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>xywh</strong> (<em>numpy.ndarray</em>) – Bounding box coordinates as <cite>(xmin, ymin, width, height)</cite>.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>Bounding box coordinates as <cite>(xmin, ymin, xmax, ymax)</cite>.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.misc.midwh2xywh">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.misc.</span></span><span class="sig-name descname"><span class="pre">midwh2xywh</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">midwh</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/misc.html#midwh2xywh"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.misc.midwh2xywh" title="Permalink to this definition"></a></dt>
<dd><p>Convert bounding box coordinates from (xmid, ymid, width, height) to (xmin, ymin, width, height) format.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>midwh</strong> (<em>numpy.ndarray</em>) – Bounding box coordinates (xmid, ymid, width, height).</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>Bounding box coordinates (xmin, ymin, width, height).</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.misc.intersection_complement_indices">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.misc.</span></span><span class="sig-name descname"><span class="pre">intersection_complement_indices</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">big_set_indices</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">small_set_indices</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/misc.html#intersection_complement_indices"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.misc.intersection_complement_indices" title="Permalink to this definition"></a></dt>
<dd><p>Get the complement of intersection of two sets of indices.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>big_set_indices</strong> (<em>numpy.ndarray</em>) – Indices of big set.</p></li>
<li><p><strong>small_set_indices</strong> (<em>numpy.ndarray</em>) – Indices of small set.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>Indices of set which is complementary to intersection of two input sets.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.misc.nms">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.misc.</span></span><span class="sig-name descname"><span class="pre">nms</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">boxes</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">scores</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">overlapThresh</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">classes</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/misc.html#nms"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.misc.nms" title="Permalink to this definition"></a></dt>
<dd><p>Non-maximum suppression. based on Malisiewicz et al.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>boxes</strong> (<em>numpy.ndarray</em>) – Boxes to process (xmin, ymin, xmax, ymax)</p></li>
<li><p><strong>scores</strong> (<em>numpy.ndarray</em>) – Corresponding scores for each box</p></li>
<li><p><strong>overlapThresh</strong> (<em>float</em>) – Overlap threshold for boxes to merge</p></li>
<li><p><strong>classes</strong> (<em>numpy.ndarray</em><em>, </em><em>optional</em>) – Class ids for each box.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><dl class="simple">
<dt>a tuple containing:</dt><dd><ul class="simple">
<li><p>boxes (list): nms boxes</p></li>
<li><p>scores (list): nms scores</p></li>
<li><p>classes (list, optional): nms classes if specified</p></li>
</ul>
</dd>
</dl>
</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>tuple</p>
</dd>
</dl>
</dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.misc.draw_tracks">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.misc.</span></span><span class="sig-name descname"><span class="pre">draw_tracks</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">image</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tracks</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/misc.html#draw_tracks"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.misc.draw_tracks" title="Permalink to this definition"></a></dt>
<dd><p>Draw on input image.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>image</strong> (<em>numpy.ndarray</em>) – image</p></li>
<li><p><strong>tracks</strong> (<em>list</em>) – list of tracks to be drawn on the image.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>image with the track-ids drawn on it.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.misc.load_labelsjson">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.misc.</span></span><span class="sig-name descname"><span class="pre">load_labelsjson</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">json_file</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/misc.html#load_labelsjson"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.misc.load_labelsjson" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.misc.dict2jsonfile">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.misc.</span></span><span class="sig-name descname"><span class="pre">dict2jsonfile</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dict_data</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">json_file_path</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/misc.html#dict2jsonfile"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.misc.dict2jsonfile" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.create_filechooser">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">create_filechooser</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">html_title</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'Select</span> <span class="pre">File'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#create_filechooser"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.create_filechooser" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.select_caffemodel_prototxt">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">select_caffemodel_prototxt</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#select_caffemodel_prototxt"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.select_caffemodel_prototxt" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.select_caffemodel_weights">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">select_caffemodel_weights</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#select_caffemodel_weights"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.select_caffemodel_weights" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.select_caffemodel">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">select_caffemodel</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#select_caffemodel"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.select_caffemodel" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.select_videofile">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">select_videofile</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#select_videofile"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.select_videofile" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.select_yolo_weights">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">select_yolo_weights</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#select_yolo_weights"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.select_yolo_weights" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.select_coco_labels">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">select_coco_labels</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#select_coco_labels"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.select_coco_labels" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.select_yolo_config">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">select_yolo_config</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#select_yolo_config"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.select_yolo_config" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.select_yolo_model">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">select_yolo_model</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#select_yolo_model"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.select_yolo_model" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.select_pbtxt">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">select_pbtxt</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#select_pbtxt"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.select_pbtxt" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.select_tfmobilenet_weights">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">select_tfmobilenet_weights</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#select_tfmobilenet_weights"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.select_tfmobilenet_weights" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="motrackers.utils.filechooser_utils.select_tfmobilenet">
<span class="sig-prename descclassname"><span class="pre">motrackers.utils.filechooser_utils.</span></span><span class="sig-name descname"><span class="pre">select_tfmobilenet</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_path</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'~/'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">use_dir_icons</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/motrackers/utils/filechooser_utils.html#select_tfmobilenet"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#motrackers.utils.filechooser_utils.select_tfmobilenet" title="Permalink to this definition"></a></dt>
<dd></dd></dl>

<section id="download-pretrained-neural-network-weights">
<h2>Download pretrained neural-network weights.<a class="headerlink" href="#download-pretrained-neural-network-weights" title="Permalink to this heading"></a></h2>
<p>[<a class="reference external" href="https://adipandas.github.io/multi-object-tracker/">Webpage</a>]
[<a class="reference external" href="https://github.com/adipandas/multi-object-tracker">GitHub</a>]</p>
<section id="yolov3">
<h3>YOLOv3<a class="headerlink" href="#yolov3" title="Permalink to this heading"></a></h3>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="n">multi</span><span class="o">-</span><span class="nb">object</span><span class="o">-</span><span class="n">tracker</span>
<span class="n">cd</span> <span class="o">./</span><span class="n">examples</span><span class="o">/</span><span class="n">pretrained_models</span><span class="o">/</span><span class="n">yolo_weights</span>
<span class="n">sudo</span> <span class="n">chmod</span> <span class="o">+</span><span class="n">x</span> <span class="o">./</span><span class="n">get_yolo</span><span class="o">.</span><span class="n">sh</span>
<span class="o">./</span><span class="n">get_yolo</span><span class="o">.</span><span class="n">sh</span>
</pre></div>
</div>
</section>
<section id="tensorflow-mobilenetssdv2">
<h3>TensorFlow - MobileNetSSDv2<a class="headerlink" href="#tensorflow-mobilenetssdv2" title="Permalink to this heading"></a></h3>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="n">multi</span><span class="o">-</span><span class="nb">object</span><span class="o">-</span><span class="n">tracker</span>
<span class="n">cd</span> <span class="o">./</span><span class="n">pretrained_models</span><span class="o">/</span><span class="n">tensorflow_weights</span>
<span class="n">sudo</span> <span class="n">chmod</span> <span class="o">+</span><span class="n">x</span> <span class="o">./</span><span class="n">get_ssd_model</span><span class="o">.</span><span class="n">sh</span>
<span class="o">./</span><span class="n">get_ssd_model</span><span class="o">.</span><span class="n">sh</span>
</pre></div>
</div>
</section>
<section id="caffemodel-mobilenetssd">
<h3>Caffemodel - MobileNetSSD<a class="headerlink" href="#caffemodel-mobilenetssd" title="Permalink to this heading"></a></h3>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="n">multi</span><span class="o">-</span><span class="nb">object</span><span class="o">-</span><span class="n">tracker</span>
<span class="n">cd</span> <span class="o">./</span><span class="n">pretrained_models</span><span class="o">/</span><span class="n">caffemodel_weights</span>
<span class="n">sudo</span> <span class="n">chmod</span> <span class="o">+</span><span class="n">x</span> <span class="o">./</span><span class="n">get_caffemodel</span><span class="o">.</span><span class="n">sh</span>
<span class="o">./</span><span class="n">get_caffemodel</span><span class="o">.</span><span class="n">sh</span>
</pre></div>
</div>
</section>
</section>
</section>
<section id="references-and-credits">
<h1>References and Credits<a class="headerlink" href="#references-and-credits" title="Permalink to this heading"></a></h1>
<p>[<a class="reference external" href="https://adipandas.github.io/multi-object-tracker/">Webpage</a>]
[<a class="reference external" href="https://github.com/adipandas/multi-object-tracker">GitHub</a>]</p>
<p>This work is based on the following literature:</p>
<ol class="arabic simple">
<li><p>Bochinski, E., Eiselein, V., &amp; Sikora, T. (2017, August). High-speed tracking-by-detection without using image information. In 2017 14th IEEE International Conference on Advanced Video and Signal Based Surveillance (AVSS) (pp. 1-6). IEEE. [<a class="reference external" href="http://elvera.nue.tu-berlin.de/files/1517Bochinski2017.pdf">pdf</a>]</p></li>
<li><p>Bewley, A., Ge, Z., Ott, L., Ramos, F., &amp; Upcroft, B. (2016, September). Simple online and realtime tracking. In 2016 IEEE International Conference on Image Processing (ICIP) (pp. 3464-3468). IEEE. [<a class="reference external" href="https://arxiv.org/abs/1602.00763">arxiv</a>]</p></li>
<li><p>YOLOv3. [<a class="reference external" href="https://pjreddie.com/media/files/papers/YOLOv3.pdf">pdf</a>][<a class="reference external" href="https://pjreddie.com/darknet/yolo/">website</a>]</p></li>
<li><p>Kalman Filter. [<a class="reference external" href="https://en.wikipedia.org/wiki/Kalman_filter">wiki</a>]</p></li>
<li><p>TensorFlow Object Detection API [<a class="reference external" href="https://github.com/tensorflow/models/tree/master/research/object_detection">GitHub</a>]</p></li>
<li><p>Caffe [<a class="reference external" href="https://caffe.berkeleyvision.org/">website</a>][<a class="reference external" href="https://github.com/BVLC/caffe">GitHub</a>]</p></li>
<li><p>OpenCV. [<a class="reference external" href="https://github.com/opencv/opencv">GitHub</a>] [<a class="reference external" href="https://opencv.org/">Website</a>]</p></li>
</ol>
</section>
<section id="contributor-covenant-code-of-conduct">
<h1>Contributor Covenant Code of Conduct<a class="headerlink" href="#contributor-covenant-code-of-conduct" title="Permalink to this heading"></a></h1>
<section id="our-pledge">
<h2>Our Pledge<a class="headerlink" href="#our-pledge" title="Permalink to this heading"></a></h2>
<p>In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, sex characteristics, gender identity and expression,
level of experience, education, socio-economic status, nationality, personal
appearance, race, religion, or sexual identity and orientation.</p>
</section>
<section id="our-standards">
<h2>Our Standards<a class="headerlink" href="#our-standards" title="Permalink to this heading"></a></h2>
<p>Examples of behavior that contributes to creating a positive environment
include:</p>
<ul class="simple">
<li><p>Using welcoming and inclusive language</p></li>
<li><p>Being respectful of differing viewpoints and experiences</p></li>
<li><p>Gracefully accepting constructive criticism</p></li>
<li><p>Focusing on what is best for the community</p></li>
<li><p>Showing empathy towards other community members</p></li>
</ul>
<p>Examples of unacceptable behavior by participants include:</p>
<ul class="simple">
<li><p>The use of sexualized language or imagery and unwelcome sexual attention or
advances</p></li>
<li><p>Trolling, insulting/derogatory comments, and personal or political attacks</p></li>
<li><p>Public or private harassment</p></li>
<li><p>Publishing others’ private information, such as a physical or electronic
address, without explicit permission</p></li>
<li><p>Other conduct which could reasonably be considered inappropriate in a
professional setting</p></li>
</ul>
</section>
<section id="our-responsibilities">
<h2>Our Responsibilities<a class="headerlink" href="#our-responsibilities" title="Permalink to this heading"></a></h2>
<p>Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.</p>
<p>Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.</p>
</section>
<section id="scope">
<h2>Scope<a class="headerlink" href="#scope" title="Permalink to this heading"></a></h2>
<p>This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.</p>
</section>
<section id="enforcement">
<h2>Enforcement<a class="headerlink" href="#enforcement" title="Permalink to this heading"></a></h2>
<p>Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at <a class="reference external" href="mailto:adityadeshpande2010&#37;&#52;&#48;gmail&#46;com">adityadeshpande2010<span>&#64;</span>gmail<span>&#46;</span>com</a>. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.</p>
<p>Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project’s leadership.</p>
</section>
<section id="attribution">
<h2>Attribution<a class="headerlink" href="#attribution" title="Permalink to this heading"></a></h2>
<p>This Code of Conduct is adapted from the <a class="reference external" href="https://www.contributor-covenant.org">Contributor Covenant</a>, version 1.4,
available at <a class="reference external" href="https://www.contributor-covenant.org/version/1/4/code-of-conduct.html">https://www.contributor-covenant.org/version/1/4/code-of-conduct.html</a></p>
<p>For answers to common questions about this code of conduct, see
<a class="reference external" href="https://www.contributor-covenant.org/faq">https://www.contributor-covenant.org/faq</a></p>
</section>
</section>


           </div>
          </div>
          <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
        <a href="readmefile.html" class="btn btn-neutral float-left" title="Multi-object trackers in Python" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
    </div>

  <hr/>

  <div role="contentinfo">
    <p>&#169; Copyright 2021, Aditya M. Deshpande.</p>
  </div>

  Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
    <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
    provided by <a href="https://readthedocs.org">Read the Docs</a>.
   

</footer>
        </div>
      </div>
    </section>
  </div>
  <script>
      jQuery(function () {
          SphinxRtdTheme.Navigation.enable(true);
      });
  </script> 

</body>
</html>